build(mobile): migrate from npm to pnpm - #46
Conversation
API unit-test coverage
Unit suite only; controllers are exercised by the e2e suite. |
amir01mn
left a comment
There was a problem hiding this comment.
Local migration testing notes
I tested the migration locally on macOS and needed the following additional steps.
1. Install pnpm without Corepack
corepack was unavailable in my Node installation, so I installed the required pnpm version using npm:
npm install -g pnpm@11.25.0
pnpm --version2. Perform a clean pnpm install
After switching to chore/migrate-npm-to-pnpm:
cd mobile
rm -rf node_modules
rm -f package-lock.json
pnpm installThe install completed successfully, including the approved post-install scripts for browser-tabs-lock and unrs-resolver.
3. Regenerate the iOS pods
cd ios
rm -rf Pods Podfile.lock build
pod installThe initial pod install failed because CocoaPods could not find the required Auth0 pod version (Auth0 2.24.1).
Refreshing the CocoaPods repositories resolved the issue:
pod install --repo-updateAfter that, the pods installed successfully.
Suggested documentation improvements
-
Show the version-specific fallback when Corepack is unavailable:
npm install -g pnpm@11.25.0
-
Emphasize that
pod install --repo-updatemay be required when the local CocoaPods repository does not contain the expected Auth0 version.
|
@Bitstachio @amir01mn Since this swaps npm for pnpm, let's not merge until the mobile app has been verified on both a simulator/emulator and a physical device. pnpm's symlinked
Drop a note with the device and OS versions you tested on. |
Sounds good. I think since the issue with pod install is not directly for the migration (it's tied to iOS setup), we can keep the current documentation. We'll make a separate guide in the future to build and run native Android and iOS apps.
I'll skip for now. Because we need to set up new dependencies (Nativewind, testing stack, etc.), the more we wait, the trickier migration might get. For now, I have tested and it works with an iOS emulator. We will do a more thorough smoke test once we set up the main frontend libraries and packages. |
No description provided.